//引入express模块
const express = require('express');
//引入连接池模块
const pool = require('../pool.js');
//创建路由器对象
const r = express.Router();


//添加路由
//1、查询商城订单详情（get /order）
//http://127.0.0.1:6060/v1/products/order
r.get('/order', (req, res, next) => {
  //4.1获取传递的参数
  let obj = req.query;
  console.log(obj);
  //4.2执行SQL语句
  // pool.query('select o_id,otitle,o_introduct,o_img,o_price,o_sold,o_count from xhg_order_detail', (err, result) => {
    pool.query('select * from xhg_order_detail', (err, result) => {
    if (err) {
      next(err);
      return;
    }
      //结果是数组，如果是空数组说明该用户不存在，否则查找成功
      if (result.length === 0) {
        res.send({
          code: 201,
          msg: '该信息不存在'
        });
      } else {
        res.send({
          code: 200,
          msg: '查询成功',
          data: result
        });
      }
    
    // console.log(result);

  });
});
//1.1、通过查询商品编号获取订单详情（get /order/:o_id）
//http://127.0.0.1:6060/v1/products/order/o_id
r.get('/order/o_id', (req, res, next) => {
  //4.1获取传递的参数
  let o_id = req.query.o_id;
  
  //4.2执行SQL语句
  // pool.query('select otitle,o_introduct,o_img,o_price,o_sold,o_count from xhg_order_detail where o_id=?',[obj.o_id], (err, result) => {
  pool.query('select * from xhg_order_detail where o_id=?',[o_id], (err, result) => {
    if (err) {
      next(err);
      return;
    }
    // res.send(result);
    // res.json({results:result})
      //结果是数组，如果是空数组说明该用户不存在，否则查找成功
      if (result.length === 0) {
        res.send({code: 201,msg: '该信息不存在'});
      } else {
        res.send({code: 200,msg: '查询成功',data: result});
      }
    
    // console.log(result);

  });
});


//2、查询待售商品列表（get /sell）
//http://127.0.0.1:6060/v1/products/sell
r.get('/sell', (req, res, next) => {
  //4.1获取传递的参数
  let obj = req.query;
  console.log(obj);
  //4.2执行SQL语句
  pool.query('select gid,gtitle,g_price,gimg from xhg_sell_goods', (err, result) => {
    if (err) {
      next(err);
      return;
    }
    console.log(result);
    //结果是数组，如果是空数组说明该用户不存在，否则查找成功
    if (result.length === 0) {
      res.send({
        code: 201,
        msg: '该待售商品信息不存在'
      });
    } else {
      res.send({
        code: 200,
        msg: '查询商品信息成功',
        data: result
      });
    }
  });
});



//3.1按照编号搜索硬件商品（get /hard）
//http://127.0.0.1:6060/v1/products/hard/hid
r.get('/hard/hid', (req, res, next) => {
  //4.1获取传递的参数
  let obj = req.query.hid;
  console.log(obj);
  //4.2执行SQL语句
  pool.query('select * from xhg_hard_products where hid=?',[obj], (err, result) => {
    if (err) {
      next(err);
      return;
    }
    console.log(result);
    //结果是数组，如果是空数组说明该用户不存在，否则查找成功
    if (result.length === 0) {
      res.send({
        code: 201,
        msg: '该硬件商品不存在'
      });
    } else {
      res.send({
        code: 200,
        msg: '查询硬件商品信息成功',
        data: result
      });
    }
  });
});
//3.1.1查询硬件所有商品（get /hard）
//http://127.0.0.1:6060/v1/products/hard
r.get('/hard', (req, res, next) => {
  //4.1获取传递的参数
  let obj = req.query;
  console.log(obj);
  //4.2执行SQL语句
  pool.query('select * from xhg_hard_products', (err, result) => {
    if (err) {
      next(err);
      return;
    }
    console.log(result);
    //结果是数组，如果是空数组说明该用户不存在，否则查找成功
    if (result.length === 0) {
      res.send({
        code: 201,
        msg: '该硬件商品列表不存在'
      });
    } else {
      res.send({
        code: 200,
        msg: '查询硬件商品信息成功',
        data: result
      });
    }
  });
});


//3.2 根据硬件商品类别查询商品（get /商品类别）
//http://127.0.0.1:6060/v1/products/genre
r.get('/genre', (req, res, next) => {
  //4.1获取传递的参数
  let obj = req.params.genre;
  console.log(obj);
  //4.2执行SQL语句
  pool.query('select * from xhg_hard_products where genre=?', [obj], (err, result) => {
    if (err) {
      next(err);
      return;
    }
    console.log(result);
    //结果是数组，如果是空数组说明该用户不存在，否则查找成功
    if (result.length === 0) {
      res.send({
        code: 201,
        msg: '该硬件商品列表不存在'
      });
    } else {
      res.send({
        code: 200,
        msg: '查询硬件商品信息成功',
        data: result
      });
    }
  });
});



//4查询软件所有商品（get /soft）
//http://127.0.0.1:6060/v1/products/class/soft
r.get('/class/soft', (req, res, next) => {
  //4.1获取传递的参数
  let obj = req.query;
  console.log(obj);
  //4.2执行SQL语句
  pool.query('select * from xhg_soft_products', (err, result) => {
    if (err) {
      next(err);
      return;
    }
    console.log(result);
    //结果是数组，如果是空数组说明该用户不存在，否则查找成功
    if (result.length === 0) {
      res.send({
        code: 201,
        msg: '该软件商品列表不存在'
      });
    } else {
      res.send({
        code: 200,
        msg: '查询软件商品信息成功',
        data: result
      });
    }
  });
});

//导出路由器对象
module.exports = r;